package com.icbc.api;

import java.util.List;

import com.icbc.api.IcbcResponse;
import com.icbc.api.internal.util.fastjson.annotation.JSONField;

public class ProjectQueryResponseV1 extends IcbcResponse {
	@JSONField(name = "total_num")
	private String totalNum;

	@JSONField(name = "fetch_num")
	private String fetchNum;
	
	@JSONField(name = "protocol_list")
	private List<ProjectQueryResponseV1Protocol> protocolList;
	
	public static class ProjectQueryResponseV1Protocol {
		@JSONField(name = "protocolno")
		private String protocolno;
		@JSONField(name = "corp_cis")
		private String corpCis;
		@JSONField(name = "busi_list")
		private List<ProjectQueryResponseV1busi> busiList;
		public String getProtocolno() {
			return protocolno;
		}
		public void setProtocolno(String protocolno) {
			this.protocolno = protocolno;
		}
		public String getCorpCis() {
			return corpCis;
		}
		public void setCorpCis(String corpCis) {
			this.corpCis = corpCis;
		}
		public List<ProjectQueryResponseV1busi> getBusiList() {
			return busiList;
		}
		public void setBusiList(List<ProjectQueryResponseV1busi> busiList) {
			this.busiList = busiList;
		}
	}
	public static class ProjectQueryResponseV1busi {
		@JSONField(name = "busi_type")
		private String busiType;
		@JSONField(name = "busi_service")
		private String busiService;
		@JSONField(name = "project_list")
		private List<ProjectQueryResponseV1Project> projectList;
		@JSONField(name = "person_list")
		private List<ProjectQueryResponseV1Person> personList;
		public String getBusiType() {
			return busiType;
		}
		public void setBusiType(String busiType) {
			this.busiType = busiType;
		}
		public String getBusiService() {
			return busiService;
		}
		public void setBusiService(String busiService) {
			this.busiService = busiService;
		}
		public List<ProjectQueryResponseV1Project> getProjectList() {
			return projectList;
		}
		public void setProjectList(List<ProjectQueryResponseV1Project> projectList) {
			this.projectList = projectList;
		}
		public List<ProjectQueryResponseV1Person> getPersonList() {
			return personList;
		}
		public void setPersonList(List<ProjectQueryResponseV1Person> personList) {
			this.personList = personList;
		}
	}
	public static class ProjectQueryResponseV1Project {
		@JSONField(name = "project_id")
		private String projectId;
		@JSONField(name = "refund_flag")
		private String refundFlag;
		@JSONField(name = "enter_acct_mode")
		private String enterAcctMode;
		@JSONField(name = "sms_verify_flag")
		private String smsVerifyFlag;
		@JSONField(name = "pay_pattern")
		private String payPattern;
		@JSONField(name = "pay_term")
		private String payTerm;
		@JSONField(name = "mulaccount_flag")
		private String mulaccountFlag;
		@JSONField(name = "begin_date")
		private String beginDate;
		@JSONField(name = "end_date")
		private String endDate;
		@JSONField(name = "project_state")
		private String projectState;
		@JSONField(name = "project_name")
		private String projectName;
		@JSONField(name = "timestamp")
		private String timestamp;
		@JSONField(name = "part_flag")
		private String partFlag;
		@JSONField(name = "school_type")
		private String schoolType;
		@JSONField(name = "corp_name")
		private String corpName;
		@JSONField(name = "sign_zone")
		private String signZone;
		@JSONField(name = "acc_list")
		private List<ProjectQueryResponseV1Acct> acctList;
		public String getProjectId() {
			return projectId;
		}
		public void setProjectId(String projectId) {
			this.projectId = projectId;
		}
		public String getRefundFlag() {
			return refundFlag;
		}
		public void setRefundFlag(String refundFlag) {
			this.refundFlag = refundFlag;
		}
		public String getEnterAcctMode() {
			return enterAcctMode;
		}
		public void setEnterAcctMode(String enterAcctMode) {
			this.enterAcctMode = enterAcctMode;
		}
		public String getSmsVerifyFlag() {
			return smsVerifyFlag;
		}
		public void setSmsVerifyFlag(String smsVerifyFlag) {
			this.smsVerifyFlag = smsVerifyFlag;
		}
		public String getPayPattern() {
			return payPattern;
		}
		public void setPayPattern(String payPattern) {
			this.payPattern = payPattern;
		}
		public String getPayTerm() {
			return payTerm;
		}
		public void setPayTerm(String payTerm) {
			this.payTerm = payTerm;
		}
		public String getMulaccountFlag() {
			return mulaccountFlag;
		}
		public void setMulaccountFlag(String mulaccountFlag) {
			this.mulaccountFlag = mulaccountFlag;
		}
		public String getBeginDate() {
			return beginDate;
		}
		public void setBeginDate(String beginDate) {
			this.beginDate = beginDate;
		}
		public String getEndDate() {
			return endDate;
		}
		public void setEndDate(String endDate) {
			this.endDate = endDate;
		}
		public String getProjectState() {
			return projectState;
		}
		public void setProjectState(String projectState) {
			this.projectState = projectState;
		}
		public String getProjectName() {
			return projectName;
		}
		public void setProjectName(String projectName) {
			this.projectName = projectName;
		}
		public String getTimestamp() {
			return timestamp;
		}
		public void setTimestamp(String timestamp) {
			this.timestamp = timestamp;
		}
		public String getPartFlag() {
			return partFlag;
		}
		public void setPartFlag(String partFlag) {
			this.partFlag = partFlag;
		}
		public String getSchoolType() {
			return schoolType;
		}
		public void setSchoolType(String schoolType) {
			this.schoolType = schoolType;
		}
		public String getCorpName() {
			return corpName;
		}
		public void setCorpName(String corpName) {
			this.corpName = corpName;
		}
		public String getSignZone() {
			return signZone;
		}
		public void setSignZone(String signZone) {
			this.signZone = signZone;
		}
		public List<ProjectQueryResponseV1Acct> getAcctList() {
			return acctList;
		}
		public void setAccList(List<ProjectQueryResponseV1Acct> acctList) {
			this.acctList = acctList;
		}
	}
	
	
	
	public static class ProjectQueryResponseV1Person {
		@JSONField(name = "manager_id")
		private String managerId;
		@JSONField(name = "manager_name")
		private String managerName;
		@JSONField(name = "manager_mobile")
		private String managerMobile;
		@JSONField(name = "manager_state")
		private String managerState;
		public String getManagerId() {
			return managerId;
		}
		public void setManagerId(String managerId) {
			this.managerId = managerId;
		}
		public String getManagerName() {
			return managerName;
		}
		public void setManagerName(String managerName) {
			this.managerName = managerName;
		}
		public String getManagerMobile() {
			return managerMobile;
		}
		public void setManagerMobile(String managerMobile) {
			this.managerMobile = managerMobile;
		}
		public String getManagerState() {
			return managerState;
		}
		public void setManagerState(String managerState) {
			this.managerState = managerState;
		}
	}
	public static class ProjectQueryResponseV1Acct {
		@JSONField(name = "agent_no")
		private String agentNo;
		@JSONField(name = "acct_no")
		private String acctNo;
		@JSONField(name = "acct_name")
		private String acctName;
		@JSONField(name = "acct_type")
		private String acctType;
		public String getAgentNo() {
			return agentNo;
		}
		public void setAgentNo(String agentNo) {
			this.agentNo = agentNo;
		}
		public String getAcctNo() {
			return acctNo;
		}
		public void setAcctNo(String acctNo) {
			this.acctNo = acctNo;
		}
		public String getAcctName() {
			return acctName;
		}
		public void setAcctName(String acctName) {
			this.acctName = acctName;
		}
		public String getAcctType() {
			return acctName;
		}
		public void setAcctType(String acctType) {
			this.acctType = acctType;
		}
	}
	public String getTotalNum() {
		return totalNum;
	}
	public void setTotalNum(String totalNum) {
		this.totalNum = totalNum;
	}
	public String getFetchNum() {
		return fetchNum;
	}
	public void setFetchNum(String fetchNum) {
		this.fetchNum = fetchNum;
	}
	public List<ProjectQueryResponseV1Protocol> getProtocolList() {
		return protocolList;
	}
	public void setProtocolList(List<ProjectQueryResponseV1Protocol> protocolList) {
		this.protocolList = protocolList;
	}
}
